home *** CD-ROM | disk | FTP | other *** search
/ Amiga Collections: Franz PD / Franz PD Disk #193 (1992)(Rhein-Sieg-Soft).zip / Franz PD Disk #193 (1992)(Rhein-Sieg-Soft).adf / GFA.Anwendung / Kredit.LST < prev    next >
File List  |  1992-09-14  |  6KB  |  137 lines

  1. REM  ******************************
  2. REM  *                            *
  3. REM  *  Kreditberechnung  V 1.00  *
  4. REM  *                            *
  5. REM  * © 21.1.1991 by Henry König *
  6. REM  *                            *
  7. REM  * Bornheide 71, 2 Hamburg 53 *
  8. REM  *                            *
  9. REM  ******************************
  10. REM
  11. init
  12. q$=""                           !  Eingangswert für die Schleife
  13. WHILE q$<>"4"                   !  Hauptschleife
  14.   CLS
  15.   PRINT AT(10,2);"Berechnung von Krediten und Laufzeiten" !  Cursor in Zeile und Spalte setzen
  16.   PRINT AT(10,12);"1 - Kreditthöhe nach Anzahl der Raten, Ratenhöhe und Laufzeit" !  Cursor in Zeile und Spalte setzen
  17.   PRINT AT(10,14);"2 - Anzahl der Raten nach Kreditsumme und Monatraten" !  Cursor in Zeile und Spalte setzen
  18.   PRINT AT(10,16);"3 - Restschuld und nicht verbrauchte Kreditzinsen berechnen" !  Cursor in Zeile und Spalte setzen
  19.   PRINT AT(10,20);"4 - Programm beenden" !  Cursor in Zeile und Spalte setzen
  20.   PRINT AT(14,23);"Ihre Wahl ---> "; !  Cursor in Zeile und Spalte setzen
  21.   INPUT q$
  22.   ON VAL(q$) GOSUB kredit,laufzeit,restschuld,beenden
  23. WEND
  24. END                             !  damit es ordentlich aussieht
  25. > PROCEDURE beenden               !  Programm beenden
  26. CLOSEW #1
  27. CLOSES 1
  28. END                           !  und zurück zur Workbench
  29. RETURN
  30. > PROCEDURE kredit                !  Kredithöhe nach Raten und Laufzeit
  31. CLS                           !  Bildschirm löschen
  32. PRINT AT(4,4);"Kreditsumme: ";
  33. INPUT kredit                  !  Kredithöhe abfragen
  34. PRINT AT(4,6);"Bearbeitungsgebühr in %: ";
  35. INPUT bg                      !  Bearbeitungsgebühr in %
  36. kredit=kredit+(kredit/100)*bg !  Bearbeitungsgebühr zur Kreditsumme
  37. PRINT AT(4,8);"Kreditsumme: ";kredit !  Kreditsumme mit Bearbeitungsgebühr
  38. PRINT AT(4,10);"Zinssatz p.a.: ";
  39. INPUT pa                      !  Zinsen per Jahr
  40. PRINT AT(4,12);"Anzahl der Monatsraten: ";
  41. INPUT mr                      !  Kreditlaufzeit in Monaten
  42. pa=pa/12                      !  Zinsen für einen Monat
  43. h=1+pa/100
  44. a=kredit*h^mr*(h-1)/(h^mr-1)
  45. b=INT(a*100+0.5)/100          !  Monatsrate
  46. PRINT
  47. PRINT " Höhe der Monatsrate: ";b;" DM"
  48. PRINT " -----------------------------"
  49. monate=1                      !  Zähler der Monate
  50. s=0                           !  Zinsen löschen
  51. kredit2=kredit
  52. PRINT " Monate","Schuld","Zinsen","Tilgung"
  53. PRINT " -------------------------------------------------------"
  54. zz=0                          !  Zeilenzähler löschen
  55. WHILE monate<=mr
  56. zz=zz+1                     !  Zeilenzähler plus 1
  57. monate1=INT((kredit2*pa/100)*100+0.5)/100
  58. tilgung=b-monate1           !  Tilgung aufaddieren
  59. s=s+monate1
  60. IF zz=12 THEN               !  12 Monate berechnet
  61.   PRINT monate,kredit2,monate1,tilgung !  Zwischensumme anzeigen
  62.   zz=0                      !  Zeilenzähler löschen
  63. ENDIF
  64. kredit2=kredit2-tilgung
  65. monate=monate+1             !  Monatszähler plus 1
  66. WEND
  67. PRINT
  68. PRINT " Zinsen für ";mr;" Monate: ";s;" DM";", Gesamtschuld: ";kredit+s;" DM"
  69. GOSUB tastendruck              !  auf Tastendruck warten
  70. RETURN
  71. > PROCEDURE laufzeit              !  Laufzeit eines Kredits berechnen
  72. CLS
  73. PRINT AT(4,6);"Kreditbetrag "; !  Cursor in Zeile und Spalte setzen
  74. INPUT dd                       !  gewünschter Kreditbetrag
  75. PRINT AT(4,8);"Bearbeitungsgebhr in DM (meisten 2%) "; !  Cursor in Zeile und Spalte setzen
  76. INPUT tt
  77. dd=dd+tt                       !  Bearbeitungsgebühr zur Kreditsumme
  78. GOSUB raten.zinsen.abfragen    !  Ratenhöhe und Zinssatz abfragen
  79. kk=bb/(bb-dd*cc/100)
  80. aa=LOG(kk)/LOG(1+cc/100)       !  Anzahl der Monatraten
  81. PRINT AT(4,14);"Anzahl der Monatsraten: ";aa !  Cursor in Zeile und Spalte setzen
  82. GOSUB tastendruck              !  auf Tastendruck warten
  83. RETURN
  84. > PROCEDURE raten.zinsen.abfragen !  Ratenhöhe und Zinssatz abfragen
  85. PRINT AT(4,10);"Höhe der monatlichen Raten "; !  Cursor in Zeile und Spalte setzen
  86. INPUT bb
  87. PRINT AT(4,12);"Zinsen je Jahr "; !  Cursor in Zeile und Spalte setzen
  88. INPUT cc
  89. cc=cc/12                       !  Zinsen je Monat
  90. RETURN
  91. > PROCEDURE restschuld            !  nicht verbrauchte Kreditzinsen berechnen
  92. CLS                            !  Bildschirm löschen
  93. PRINT AT(4,6);"Wie hoch war der gesamte Kredit mit Zinsen "; !  Cursor in Zeile und Spalte setzen
  94. INPUT uu                       !  gesamte Kredithöhe
  95. PRINT AT(4,8);"Aus wieviel Raten besteht der Kredit "; !  Cursor in Zeile und Spalte setzen
  96. INPUT aa
  97. GOSUB raten.zinsen.abfragen    !  Ratenhöhe und Zinssatz abfragen
  98. PRINT AT(4,14);"Wieviel Raten sind noch zu zahlen "; ! Cursor in Zeile, Spalte setzen
  99. INPUT rr                       !  Anzahl der restlichen Raten
  100. LOCATE 4,16                    !  Cursor in Zeile und Spalte setzen
  101. rsu=rr*bb                      !  noch fällige Raten mal Monatsrate
  102. PRINT "Restsumme: ";rsu        !  restlicher Kredit
  103. rs=rsu                         !  gesamten Kredit merken
  104. rz=0                           !  nicht verbrauchte Zinsen löschen
  105. FOR j=rr TO 1 STEP -1
  106. zh=(rs/100)*cc                 !  Zinsen für den Restbetrag
  107. rz=rz+zh                       !  nicht verbrauchte Zinsen addieren
  108. rs=rs-bb                       !  Restsumme minus Monatsrate
  109. REM   PRINT j;" ";rz;" ";zh
  110. REM  INPUT x$
  111. NEXT j
  112. PRINT AT(4,18);"Restkredit abzüglich nichtverbraucheter Zinsen: ";rsu-rz !  Cursor in Zeile und Spalte setzen
  113. GOSUB tastendruck              !  auf Tastendruck warten
  114. RETURN
  115. > PROCEDURE tastendruck          !  auf Tastendruck warten
  116. PRINT AT(24,28);"Weiter mit beliebiger Taste"; !  Cursor in Zeile und Spalte setzen
  117. INPUT x$
  118. RETURN
  119. > PROCEDURE init
  120. breite%=640                   ! Screenbreite
  121. hoehe%=256                    ! Screenhöhe
  122. ebenen%=3                     ! 3 Bitplanes
  123. OPENS 1,0,0,breite%,hoehe%,ebenen%,&H8000
  124. OPENW #1,0,0,breite%,hoehe%,&H18,&H1800,1
  125. farben.setzen                 ! Farbpalette setzen
  126. RETURN
  127. > PROCEDURE farben.setzen
  128. SETCOLOR 0,5,5,5              ! grau statt blau
  129. SETCOLOR 1,15,15,15           ! weiß bleibt
  130. SETCOLOR 2,0,0,0              ! schwarz erhalten
  131. SETCOLOR 3,15,5,0             ! rot bleibt
  132. SETCOLOR 4,10,10,10           ! hellgrau inverse Farbe im Filerequester
  133. SETCOLOR 5,15,15,0            ! gelb
  134. SETCOLOR 6,0,0,0              ! schwarz = Inverse Farbe im Filerequester
  135. RETURN
  136. REM
  137.